#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# @Time    : 2021/8/30 17:09
# @Author  : 李中华
# @Email   : 1260429766@qq.com
# @File    : conftest.py
import pytest

@pytest.hookimpl(hookwrapper=True, tryfirst=True)
def pytest_runtest_makereport(item, call):
    """
　　每个测试用例执行后，制作测试报告
　　:param item:测试用例对象
　　:param call:测试用例的测试步骤
            先执行when=’setup’ 返回setup 的执行结果
            然后执行when=’call’ 返回call 的执行结果
            最后执行when=’teardown’返回teardown 的执行结果
　　:return:
　　"""
    # 获取钩子方法的调用结果,返回一个result对象
    out = yield
    # # 获取调用结果的测试报告，返回一个report对象, reportd对象的属性包括when（steup, call, teardown三个值）、nodeid(测试用例的名字)、outcome(用例的执行结果，passed,failed)
    report = out.get_result()
    print(out)
    print(report)
    print(report.when)
    print(report.nodeid)
    print(report.outcome)